# 原题

反转一个单链表。

示例:

输入: 1->2->3->4->5->NULL
输出: 5->4->3->2->1->NULL
进阶:
你可以迭代或递归地反转链表。你能否用两种方法解决这道题?

# 解 :

var reverseList = function (head) {
    let newHead = null
    while (head) {
        // 单独取出下一个节点
        let next = head.next
        // 将头节点连接到新头节点后面
        head.next = newHead
        newHead = head
        // 向后移动头节点
        head = next
    }
    return newHead
};
Last Updated: 4/3/2020, 6:21:54 PM